package com.hwadee.property.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hwadee.property.dto.ParkingUsePersonal;
import com.hwadee.property.pojo.ParkingUse;
import com.hwadee.property.dto.PageResult;

import java.util.Date;
import java.util.List;

/**
 * 车位使用服务接口
 * 提供车位使用记录的增删查改及分页查询功能
 */
public interface IParkingUseService extends IService<ParkingUse> {
    /**
     * 获取车位使用记录的分页数据
     * @param current 当前页码
     * @param size 每页条数
     * @param userId 用户ID
     * @param carNumber 车牌号
     * @param parkingId 车位ID
     * @param useType 使用类型
     * @return 分页查询结果
     */
    PageResult<ParkingUse> getPage(int current, int size, Long userId, String carNumber, Long parkingId, Long communityId, String useType, Date startTime, Date endTime);

    List<ParkingUsePersonal> getByOwner(Long userId);

    Double calculateTotalFee(String useType, Long communityID);

    Date getEndUseTime(Date startTime, String useType);
}
